import type { ID } from "/@/api/models";
import type { AppTypeEnum } from "/@/api/aiot/application/models";

export interface AccountItem {
  avatar?: string;
  description?: string;
  email?: string;
  gender?: string;
  location?: string;
  nickName?: string;
  phone?: string;
  region?: string;
  userName?: string;
  isLocked?: number;
  loginAccount?: string;
  userId?: string;
}

export interface QueryAccount {
  account: string;
}

export interface UpdateAccModel {
  confirmPassword: string;
  oldPassword: string;
  password: string;
  userId: string;
}

export interface LockModel {
  userId: string;
  lock: number;
}

export interface UpdatePWModel {
  confirmPassword: string;
  oldPassword: string;
  password: string;
  userId?: string;
}

export interface LogoutParams {
  appType: AppTypeEnum;
  token: string;
  userId: ID;
}

export interface LogingLogItem {
  browser?: string;
  browserVersion?: string;
  description?: string;
  location?: string;
  loginAccount?: string;
  loginDate?: string;
  operatingSystem?: string;
  requestIp?: string;
  ua?: string;
  userId?: string;
  usersName?: string;
}

export interface LogingLogSearchModel {
  loginDateBegin?: string;
  loginDateEnd?: string;
  searchText?: string;
  dateRange?: string[];
}
